Many applications involving valuable documents, such as passports, ID cards, bank notes and checks, and diplomas or similar certificates, require a mechanism to prove the authenticity and integrity of the document. There are also a number of applications where valuable images must be securely stored and/or transmitted electronically. Classic image encryption has in the past been used for these purposes. The problem with classic image encryption, where the image data itself is encrypted using one or more encryption keys and an encryption algorithm, is that changing even one bit of the encrypted message makes it impossible to obtain the original message. As a result, classic encryption is not suitable for uses that employ noisy channels such as print-and-scan channels without also employing error correction codes. In addition, in the prior art, two-dimensional barcodes have been used to store images in encrypted form in hard copy. However, if a relatively large image needs to be stored, the resulting two-dimensional barcode will also need to be significantly large. This is can be problematic, as the space that is available for printing such barcodes is often limited. If the image data is compressed in order to make it fit into a smaller two-dimensional barcode (such as a standard Datamatrix having a fixed data capacity), this can also be problematic, as data compression will likely be lossy and degrade the quality of the image. Moreover, two-dimensional barcodes do not provide any copy prevention mechanisms. Such copy prevention mechanisms are important for fraud prevention purposes, and adding them to two-dimensional barcodes would increase application complexity and costs and printing area.
Thus, there is room for improvement in the field of image encryption for noisy channels such as print-and-scan channels.